package 正则表达式.查找信息;

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class Test {
    public static void main(String[] args) {
        // 目标: 掌握使用正则表达式查找内容

        // 需求1: 从以下内容中爬取出,手机,邮箱,座机,400电话等信息
        method1();
    }

    private static void method1() {
        String date = "java,\n" + "1866668888" + "boniu@itcast.cn" + "01036517895" + "400-618-9090" + "4006189090";

        // 1. 定义爬取规则
        String regex = "(1[3-9]\\d{9})|(0\\d{2,7}-?[1-9]\\d{4,19})|(\\w{2,}@\\w{2,20}(\\.\\w{2,10}){1,2})"
                + "|(400-?\\d{3,7}-?\\d{3,7})";

        // 2. 把正则表达式封装成一个Pattern对象
        Pattern pattern = Pattern.compile(regex);

        // 3. 通过Pattern对象取获取查找内容的匹配器对象.
        Matcher matcher = pattern.matcher(date);

        // 4. 定义一个循环开始爬取信息
        while (matcher.find()) {
            String rs = matcher.group();// 获取找到的内容
            System.out.println(rs);
        }
    }
}
